/*
 * Contador.cpp
 *
 *  Created on: 19/05/2011
 *      Author: Jonathan
 */

#include "Contador.h"

/*************************************************************
 * 															 *
 * 						PRIVATE								 *
 * 															 *
 *************************************************************/

/**
 * Agrega un caracter al comienzo de la palabra almacenada
 * @param raiz el caracter a agregar
 * @return este contador
 */
Contador & Contador::agregarRaiz(char & raiz) {
	string palabra;
	palabra.push_back(raiz);
	this->palabra = palabra + this->palabra;
	return *this;
}

/*************************************************************
 * 															 *
 * 						PUBLIC								 *
 * 															 *
 *************************************************************/

/**
 * Constructor por defecto
 */
Contador::Contador() {
	this->palabra = "";
	this->ocurrencias = 0;
}

/**
 * Constructor con un caracter como palabra
 * @param palabra caracter que contiene al comienzo
 */
Contador::Contador(char palabra) {
	this->palabra = "";
	this->palabra.push_back(palabra);

	this->ocurrencias = 0;
}

/**
 * Destructor por defecto
 */
Contador::~Contador() {

}

/**
 * Operador asignacion
 * @param asignacion
 * @return este objeto
 */
Contador & Contador::operator =(const Contador & asignacion) {
	this->palabra = asignacion.palabra;
	this->ocurrencias = asignacion.ocurrencias;
	return *this;
}
/**
 * Geter de la palabra
 * @return la palabra almacenada
 */
string Contador::getPalabra() const {
	return palabra;
}

/**
 * Geter de ocurrencias
 * @return las ocurrencias
 */
int Contador::getOcurrencias() const {
	return ocurrencias;
}



/**
 * Setter de ocurrencias
 * @param ocurrencias las ocurrencias
 */
void Contador::setOcurrencias(int ocurrencias) {
	this->ocurrencias = ocurrencias;
}

/**
 * Setter de la palabra
 * @param palabra to set
 */

void Contador::setPalabra(string palabra) {
	this->palabra = palabra;
}

